package com.senyin.entity;

import com.sun.istack.internal.NotNull;

import java.util.Date;
import java.util.Objects;

public class StaffInfo {
    /**
     * 员工uuid
     */
    private String siUuid;
    /**
     * 员工工号
     */
    private String siId;
    /**
     * 姓名
     */
    private String siName;
    /**
     * 性别0男 1女
     */
    private Integer siSex;
    /**
     * 出生日期
     */
    private Date siBirth;
    /**
     * 岗位id
     */
    private String psId;
    /**
     * 部门id
     */
    private String dpId;
    /**
     * 密码
     */
    private String siPass;
    /**
     * 0普通 1管理员
     */
    private Integer siAuth;

    public StaffInfo() {
    }

    public StaffInfo(String siUuid, String siId, String siName, Integer siSex, Date siBirth, String psId, String dpId, Integer siAuth) {
        this.siUuid = siUuid;
        this.siId = siId;
        this.siName = siName;
        this.siSex = siSex;
        this.siBirth = siBirth;
        this.psId = psId;
        this.dpId = dpId;
        this.siAuth = siAuth;
    }

    public StaffInfo(String siUuid, String siId, String siName, Integer siSex, Date siBirth, String psId, String dpId, String siPass, Integer siAuth) {
        this.siUuid = siUuid;
        this.siId = siId;
        this.siName = siName;
        this.siSex = siSex;
        this.siBirth = siBirth;
        this.psId = psId;
        this.dpId = dpId;
        this.siPass = siPass;
        this.siAuth = siAuth;
    }

    public StaffInfo(String siId, String siName, Integer siSex, Date siBirth, String psId, String dpId, String siPass, Integer siAuth) {
        this.siId = siId;
        this.siName = siName;
        this.siSex = siSex;
        this.siBirth = siBirth;
        this.psId = psId;
        this.dpId = dpId;
        this.siPass = siPass;
        this.siAuth = siAuth;
    }

    @Override
    public String toString() {
        return "StaffInfo{" +
                "siUuid='" + siUuid + '\'' +
                ", siId='" + siId + '\'' +
                ", siName='" + siName + '\'' +
                ", siSex=" + siSex +
                ", siBirth=" + siBirth +
                ", psId=" + psId +
                ", dpId=" + dpId +
                ", siPass='" + siPass + '\'' +
                ", siAuth=" + siAuth +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        StaffInfo staffInfo = (StaffInfo) o;
        return Objects.equals(siUuid, staffInfo.siUuid) && Objects.equals(siId, staffInfo.siId) && Objects.equals(siName, staffInfo.siName) && Objects.equals(siSex, staffInfo.siSex) && Objects.equals(siBirth, staffInfo.siBirth) && Objects.equals(psId, staffInfo.psId) && Objects.equals(dpId, staffInfo.dpId) && Objects.equals(siPass, staffInfo.siPass) && Objects.equals(siAuth, staffInfo.siAuth);
    }

    @Override
    public int hashCode() {
        return Objects.hash(siUuid, siId, siName, siSex, siBirth, psId, dpId, siPass, siAuth);
    }

    public String getSiUuid() {
        return siUuid;
    }

    public void setSiUuid(String siUuid) {
        this.siUuid = siUuid;
    }

    public String getSiId() {
        return siId;
    }

    public void setSiId(String siId) {
        this.siId = siId;
    }

    public String getSiName() {
        return siName;
    }

    public void setSiName(String siName) {
        this.siName = siName;
    }

    public Integer getSiSex() {
        return siSex;
    }

    public void setSiSex(Integer siSex) {
        this.siSex = siSex;
    }

    public Date getSiBirth() {
        return siBirth;
    }

    public void setSiBirth(Date siBirth) {
        this.siBirth = siBirth;
    }

    public String getPsId() {
        return psId;
    }

    public void setPsId(String psId) {
        this.psId = psId;
    }

    public String getDpId() {
        return dpId;
    }

    public void setDpId(String dpId) {
        this.dpId = dpId;
    }

    public String getSiPass() {
        return siPass;
    }

    public void setSiPass(String siPass) {
        this.siPass = siPass;
    }

    public Integer getSiAuth() {
        return siAuth;
    }

    public void setSiAuth(Integer siAuth) {
        this.siAuth = siAuth;
    }
}
